<template>
	<a-input-number v-if="type === 'number'" :style="{ width: '80px' }" size="small" :default-value="defaultValue" @change="handleChange" />
	<a-switch v-else :default-checked="defaultValue" size="small" @change="handleChange" />
</template>

<script setup>
	const props = defineProps({
		type: {
			type: String,
			default: '',
		},
		name: {
			type: String,
			default: '',
		},
		defaultValue: {
			type: [String, Boolean, Number],
			default: '',
		},
	})
	const emit = defineEmits(['inputChange'])
	const handleChange = (value) => {
		emit('inputChange', {
			value,
			key: props.name,
		})
	}
</script>
